1. Field of the Invention
Embodiments of the present invention relate to the field of Java-based embedded device management applications. More particularly, embodiments of the present invention relate generally to accessing and launching a locally stored version of the Java-based embedded device management applications from a client workstation.
2. Related Art
An embedded application (e.g., device management application) is an application which neither needs to be explicitly installed on a client workstation, nor actually installs pieces on a client workstation. The embedded application comes with the device and can be accessed through some network (e.g., the Internet). As soon as there is Internet protocol (IP) connectivity between a client workstation and the device, a user can bring up the embedded application within a browser on the client workstation.
The advantages of having an embedded application is that a user that is Web-enabled can access the embedded application and interact with the embedded application without having to load or install anything onto the client workstation. As a result, via any workstation that is Web-enabled, a user can access and interact with the embedded application.
Prior Art FIG. 1 is a flow diagram of the flow of information through a conventional network 100 that is capable of interfacing with the networking device 110 while ensuring that a compatible version of the embedded application is used to interface with the networking device 110. In the conventional network 100, an applet (java based technology) allows the client to run the version of the embedded application that is compatible with the networking device 110.
More specifically, the loader 115 and the embedded application that is used to interface with the networking device 110 are stored on the networking device. The loader is used to launch the embedded application on a client workstation 130.
As shown in Prior Art FIG. 1, in step 1, the loader 115 is installed into a browser window through a java plug-in (e.g., java virtual machine) located on the client workstation 130. In steps 2 and 3, the loader 115 executes in the client workstation 130 via the browser window 140 in order to pull the embedded application from the networking device 110 to the client workstation 130. That is, the loader 115 extracts the embedded application 125 for use on the client workstation 130. More specifically, client workstation 130 implements the embedded application as a Java applet, that is running within the Java virtual machine (JVM) of the browser 140 on the client workstation 130. As such, the user can access the application through another window 140. In this way, through step 4, the user can interface with the networking device 110 using the java based embedded application, for example to configure the networking device 110.
While the use of the java based applet through the browser window 140 ensures that a compatible version of the embedded application is used to interface with the networking device, the browser interface is slow and inefficient. That is, the embedded application must be downloaded each time the client wants to interface with the networking device, which is an inefficient use of resources. Also, if two networking devices use the same version of an embedded application, two separate but identical copies of the embedded application are downloaded. Additionally, if the client is connecting to the networking device 110 through a secure socket layer (SSL) numerous dialog boxes are presented in order to guide the user through the downloading process. However, these dialog interfaces are also slow and cumbersome from the user perspective. Furthermore, since the embedded application is stored on the networking device 110, the user is limited in terms of runtime parameters, such as memory allocated to the embedded application, etc.